import { useEffect, useRef } from "react";

// 返回组件的挂载状态，如果还没挂载或者已经卸载了，返回false，否则返回true
// 使用场景：当发送Ajax时，如果响应还没有完成时，切换页面，会报一个警告，所以使用这个hook的返回状态，判断一下，在进行setState赋值操作
export const useMountedRef = () => {
  const mountedRef = useRef(false);
  useEffect(() => {
    mountedRef.current = true;
    return () => {
      mountedRef.current = false;
    };
  });
  return mountedRef;
};
